package cn.b504.qpcr.interfaces.cal;

import cn.b504.qpcr.entity.Data;
import cn.b504.qpcr.entity.PlateSetting;
import cn.b504.qpcr.entity.Well;

import java.util.concurrent.Future;

public interface CalCq {
  Future<?> calByCustomThreshold(PlateSetting.Target target, Data data, String method);

  Future<?> calByThreshold(PlateSetting.Target target, Data data, int startCycle, int endCycle, String method);

  Future<?> calByRegression(Well.Line line, int startCycle, int endCycle, String method);

  Future<?> calByExtremum(Well.Line line, String method);

  void calByCqMan(Data data, String method);
}
